package handler

import (
	"net/http"

	"github.com/gin-gonic/gin"
)

// IsTokenValid : token是否有效
func IsTokenValid(token string) bool {
	return len(token) == 40
}

// Authorize : http请求拦截器
func Authorize() gin.HandlerFunc {
	return func(c *gin.Context) {
		username := c.Request.FormValue("username")
		token := c.Request.FormValue("token")
		// 验证登录token是否有效
		if len(username) < 3 || !IsTokenValid(token) {
			// token校验失败则跳转到登录页面
			c.Redirect(http.StatusFound, "/static/view/signin.html")
			return
		}
		// c.Abort()
		// resp := util.NewRespMsg(
		// 	int(common.StatusTokenInvalid),
		// 	"token无效",
		// 	nil,
		// )
		// c.JSON(http.StatusOK, resp)
		// return
		c.Next()
	}
}
